﻿// Fibonacci Again HDU - 1021.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

/*
https://vjudge.net/problem/HDU-1021#author=GPT_zh

还有另一种斐波那契数列：F(0) = 7, F(1) = 11, F(n) = F(n-1) + F(n-2) (n≥2)。
输入
输入包含一系列行，每行包含一个整数 n。 (n < 1,000,000)。
输出
如果 3 能整除 F(n)，则输出单词 "yes"。

如果不能，则输出单词 "no"。
示例
0
1
2
3
4
5

no
no
yes
no
no
no
*/
#include <iostream>
#include <cstring>

using namespace std;

const int N = 3;
int n;
const int MOD = 99999;

void mul(int res[][N], int a[][N], int b[][N]) {
    static int temp[N][N];  memset(temp, 0, sizeof temp);

    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            for (int k = 0; k < N; k++) {
                temp[i][j] = temp[i][j] + 1LL*a[i][k] * b[k][j] % MOD;
                temp[i][j] %= MOD;
            }
        }
    }

    memcpy(res, temp, sizeof temp);
}


int main()
{

    while (cin >> n) {
        //n--;
        int f[N][N] = { 7,11,18 };
        int a[N][N] = {
            {0, 0, 0},
            {1, 0, 1},
            {0, 1, 1}
        };
        while (n) {
            if (n & 1) mul(f, f, a);
            mul(a, a, a);
            n >>= 1;
        }

        if (f[0][0] % MOD % 3 == 0) {
            cout << "yes" << endl;
        }
        else {
            cout << "no" << endl;
        }
    }

	return 0;
}

 